package com.xyy.ec.pop.api.kingdinggmp.service;


import com.xyy.ec.pop.api.kingdinggmp.dto.pop.ApiRPCResult;
import com.xyy.ec.pop.api.kingdinggmp.dto.pop.ResultDto;
import com.xyy.ec.pop.api.kingdinggmp.dto.pop.TaskQueryParam;

public interface PopService {

    /**
     * 任务上报数据接口
     *
     * @param taskQueryParam
     * @return
     */
    ApiRPCResult<Boolean> pushDataInfo(TaskQueryParam taskQueryParam);

    /**
     * 任务拉取数据接口
     *
     * @param taskQueryParam
     * @return
     */
    ApiRPCResult<ResultDto> pullDataInfo(TaskQueryParam taskQueryParam);

    /**
     * 任务拉取数据回调接口
     *
     * @param taskQueryParam
     * @return
     */
    ApiRPCResult<Boolean> callbackForPullTask(TaskQueryParam taskQueryParam);

    /**
     * 同步平台客户任务拉取数据回调接口
     *
     * @param taskQueryParam
     * @return
     */
    ApiRPCResult<Boolean> callbackForCustomerPullTask(TaskQueryParam taskQueryParam);

    /**
     * 查询任务执行条件
     *
     * @param taskQueryParam
     * @return
     */
    ApiRPCResult<ResultDto> queryTaskCondition(TaskQueryParam taskQueryParam);

    /**
     * 客户端检测上报
     *
     * @param taskQueryParam
     * @return
     */
    ApiRPCResult<Boolean> pushClientInfo(TaskQueryParam taskQueryParam);


}
